/*
* @Author: monster
* @Date:   2017-09-20 20:18:27
* @Last Modified by:   monster
* @Last Modified time: 2017-09-21 02:00:56
*/
'use strict';
angular.module('app').controller('searchCtrl', ['dict','$http', '$scope', function(dict,$http, $scope){
	// 设置搜索框默认值
	$scope.name = "";
	// 封装搜索方法
	$scope.search = function(){
	 $http.get('/data/positionList.json?name'+$scope.name).success(function(resp){
	 $scope.positionList = resp;
	});
	};
	// 自调搜索方法
	$scope.search();
	// 将sheet定义成空对象
	$scope.sheet = {

	};
	// 定义tab用的list数组
	$scope.tabList = [
		{
			id : 'city',
			name : '城市'
		},
		{
			id : 'salary',
			name : '薪资'
		},
		{
			id : 'scale',
			name : '公司规模'
		}
	];
	// 先定义一个空字符串准备缓存tab被选择的id
	var tabId = '';
	// 初始化过滤条件
	$scope.filterObj = {};
	// 定义当tab被点击时的方法
	$scope.tClick = function(id,name){
		// 缓存id
		tabId = id;
		// 将全局变量定义的dict对象里匹配的id赋值给sheet.list
		$scope.sheet.list = dict[id];
		// 显示选择列表
		$scope.sheet.visible = true;
	};
	// 定义当点击遮罩层列表时的方法
	$scope.sClick = function(id,name){
		// 如果有id的话，开始循环tabList
		if (id) {
			angular.forEach($scope.tabList,function(item){
				// 如果当前循环list的id和被点击的Id一致的话
				if (item.id===tabId) {
					// 就把当前循环的name替换成遮罩层列表被点击的name
					item.name = name;
				}
			});
			// 每次有效点击，就会添加一个条件
			$scope.filterObj[tabId + 'Id'] = id;
		// 如果没有id就要将列表还原成最初的样式
		}else{
			// 如果选择不限制，就将这个条件删掉
			delete $scope.filterObj[tabId + 'Id'];
			angular.forEach($scope.tabList,function(item){
				// 如果当前循环list的id和被点击的Id一致的话
				if (item.id===tabId) {
					switch(item.id){
						case 'city':
							item.name = '城市';
							break;
						case 'salary':
							item.name = '薪资';
							break;
						case 'scale':
							item.name = '公司规模';
							break;
					}
				}
			})
		}
	};
}]);